大家會不會點好奇,什麼時候方法要用 GET 什麼時候要用 POST / PUT,
或是為什麼會這樣設計 API 呢?
今天我們就來介紹一下 RESTful API
以下是對於 REST 維基百科的介紹 :
REST (Representational state transfer) is a software architectural style that was created to guide the design and development of the architecture for the World Wide Web. REST defines a set of constraints for how the architecture of an Internet-scale distributed hypermedia system, such as the Web, should behave. The REST architectural style emphasises the scalability of interactions between components, uniform interfaces, independent deployment of components, and the creation of a layered architecture to facilitate caching of components to reduce user-perceived latency, enforce security, and encapsulate legacy systems.[1]
也就是說,REST 是一個網路互相傳遞資訊所使用的一種規則,旨在引導設計和開發像全球資訊網(World Wide Web)這樣的互聯網規模的分散式超媒體系統的架構。
它闡述了一組約束條件,指導此類系統應該如何運作,強調了互聯性的可擴展性。
另外 REST 也強調在系統中使用一致的接口設計,這有助於簡化組件之間的互動,使其更容易瞭解和使用。
同時,它鼓勵組件的獨立部署,這意味著不同部分可以獨立開發和更新,提高了系統的靈活性。
以下 REST 架構風格的一些原則。
URI 使用名詞而不是動詞。
將要對資源要做的事寫在方法。
取得書單列表
非 RESTful API:
/getAllBooks
RESTful API:
GET /books
新增書單
非 RESTful API:
/addNewBook
RESTful API:
POST /book
刪除某書籍
非 RESTful API:
/deleteBook
RESTful API:
DELETE /book
看到以上的範例的差別了嗎?
使用 RESTful API 的話,路由只會使用名詞,然後依據不同的方法,
來決定要做的事情是什麼。
支援多種 Content Types 格式,目前主流是使用 JSON 來進行資料交換。
以上提到 RESTful API 將要對資源要做的事寫在方法裡面,
那個方法大概是用在什麼地方呢?
以下分享幾個比較常會使用到的請求方法。
以上就是對 RESTful API 基本的介紹及概念,
如果想深入了解也可以看底下的參考資源哦~
參考資源: